package com.ruoyi.trans.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 承租人信息对象 lessee_info
 * 
 * @author zhangjun
 * @date 2025-05-18
 */
public class LesseeInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private String id;

    /** 承租人姓名(公钥加密) */
    @Excel(name = "承租人姓名(公钥加密)")
    private String userName;

    /** 承租人身份证(公钥加密) */
    @Excel(name = "承租人身份证(公钥加密)")
    private String userId;

    /** 承租人手机号(公钥加密) */
    @Excel(name = "承租人手机号(公钥加密)")
    private String userPhoneNumber;

    /** 承租人证件类型 (CRED_PSN_CH_IDCARD, CRED_PSN_CH_TWCARD, CRED_PSN_CH_MACAO, CRED_PSN_CH_HONGKONG, CRED_PSN_PASSPORT, CRED_ORG_USCC, CRED_ORG_REGCODE) */
    @Excel(name = "承租人证件类型 (CRED_PSN_CH_IDCARD, CRED_PSN_CH_TWCARD, CRED_PSN_CH_MACAO, CRED_PSN_CH_HONGKONG, CRED_PSN_PASSPORT, CRED_ORG_USCC, CRED_ORG_REGCODE)")
    private String userType;

    /** 承租人证件有效期 (yyyy-MM-dd, 9999-99-99) */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "承租人证件有效期 (yyyy-MM-dd, 9999-99-99)", width = 30, dateFormat = "yyyy-MM-dd")
    private Date certValidDate;

    /** 支付宝账号信息 (租借商品用户的支付宝uid) */
    @Excel(name = "支付宝账号信息 (租借商品用户的支付宝uid)")
    private String alipayUid;

    /** 用户在支付宝应用下的 openId */
    @Excel(name = "用户在支付宝应用下的 openId")
    private String userOpenId;

    /** 商户的支付宝应用 appId */
    @Excel(name = "商户的支付宝应用 appId")
    private String merchantAppId;

    /** 出租企业名称 */
    @Excel(name = "出租企业名称")
    private String leaseCorpName;

    /** 出租企业统一社会信用代码 */
    @Excel(name = "出租企业统一社会信用代码")
    private String leaseCorpId;

    /** 出租法定代表人姓名 */
    @Excel(name = "出租法定代表人姓名")
    private String leaseCorpOwnerName;

    /** 租赁方类别 (1.企业用户, 2.个人用户) */
    @Excel(name = "租赁方类别 (1.企业用户, 2.个人用户)")
    private Long lesseeType;

    /** 营业执照对应的名称 (企业类型必填) */
    @Excel(name = "营业执照对应的名称 (企业类型必填)")
    private String leasedEnterprise;

    /** 租赁人身份证人像面照片地址 */
    @Excel(name = "租赁人身份证人像面照片地址")
    private String userImageUrl;

    /** 租赁人身份证国徽面照片地址 */
    @Excel(name = "租赁人身份证国徽面照片地址")
    private String userBackImageUrl;

    /** 平台注册的电话(公钥加密) */
    @Excel(name = "平台注册的电话(公钥加密)")
    private String registeredTelephoneNumber;

    /** 承租企业实际控制人身份证号(公钥加密) */
    @Excel(name = "承租企业实际控制人身份证号(公钥加密)")
    private String actualControllerId;

    /** 承租企业实际控制人手机号(公钥加密) */
    @Excel(name = "承租企业实际控制人手机号(公钥加密)")
    private String actualControllerNumber;

    /** 承租企业实际控制人姓名(公钥加密) */
    @Excel(name = "承租企业实际控制人姓名(公钥加密)")
    private String actualControllerName;

    /** 承租企业实际控制人身份证人像面地址 */
    @Excel(name = "承租企业实际控制人身份证人像面地址")
    private String actualControllerImageUrl;

    /** 承租企业实际控制人身份证国徽面地址 */
    @Excel(name = "承租企业实际控制人身份证国徽面地址")
    private String actualControllerBackImageUrl;

    /** 承租企业统一社会信用代码 */
    @Excel(name = "承租企业统一社会信用代码")
    private String businesslicenseNumber;

    /** 承租企业营业执照地址 */
    @Excel(name = "承租企业营业执照地址")
    private String businesslicenseUrl;

    /** 承租企业法定代表人姓名 */
    @Excel(name = "承租企业法定代表人姓名")
    private String legalRepresentative;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updatedAt;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }

    public void setUserId(String userId) 
    {
        this.userId = userId;
    }

    public String getUserId() 
    {
        return userId;
    }

    public void setUserPhoneNumber(String userPhoneNumber) 
    {
        this.userPhoneNumber = userPhoneNumber;
    }

    public String getUserPhoneNumber() 
    {
        return userPhoneNumber;
    }

    public void setUserType(String userType) 
    {
        this.userType = userType;
    }

    public String getUserType() 
    {
        return userType;
    }

    public void setCertValidDate(Date certValidDate) 
    {
        this.certValidDate = certValidDate;
    }

    public Date getCertValidDate() 
    {
        return certValidDate;
    }

    public void setAlipayUid(String alipayUid) 
    {
        this.alipayUid = alipayUid;
    }

    public String getAlipayUid() 
    {
        return alipayUid;
    }

    public void setUserOpenId(String userOpenId) 
    {
        this.userOpenId = userOpenId;
    }

    public String getUserOpenId() 
    {
        return userOpenId;
    }

    public void setMerchantAppId(String merchantAppId) 
    {
        this.merchantAppId = merchantAppId;
    }

    public String getMerchantAppId() 
    {
        return merchantAppId;
    }

    public void setLeaseCorpName(String leaseCorpName) 
    {
        this.leaseCorpName = leaseCorpName;
    }

    public String getLeaseCorpName() 
    {
        return leaseCorpName;
    }

    public void setLeaseCorpId(String leaseCorpId) 
    {
        this.leaseCorpId = leaseCorpId;
    }

    public String getLeaseCorpId() 
    {
        return leaseCorpId;
    }

    public void setLeaseCorpOwnerName(String leaseCorpOwnerName) 
    {
        this.leaseCorpOwnerName = leaseCorpOwnerName;
    }

    public String getLeaseCorpOwnerName() 
    {
        return leaseCorpOwnerName;
    }

    public void setLesseeType(Long lesseeType) 
    {
        this.lesseeType = lesseeType;
    }

    public Long getLesseeType() 
    {
        return lesseeType;
    }

    public void setLeasedEnterprise(String leasedEnterprise) 
    {
        this.leasedEnterprise = leasedEnterprise;
    }

    public String getLeasedEnterprise() 
    {
        return leasedEnterprise;
    }

    public void setUserImageUrl(String userImageUrl) 
    {
        this.userImageUrl = userImageUrl;
    }

    public String getUserImageUrl() 
    {
        return userImageUrl;
    }

    public void setUserBackImageUrl(String userBackImageUrl) 
    {
        this.userBackImageUrl = userBackImageUrl;
    }

    public String getUserBackImageUrl() 
    {
        return userBackImageUrl;
    }

    public void setRegisteredTelephoneNumber(String registeredTelephoneNumber) 
    {
        this.registeredTelephoneNumber = registeredTelephoneNumber;
    }

    public String getRegisteredTelephoneNumber() 
    {
        return registeredTelephoneNumber;
    }

    public void setActualControllerId(String actualControllerId) 
    {
        this.actualControllerId = actualControllerId;
    }

    public String getActualControllerId() 
    {
        return actualControllerId;
    }

    public void setActualControllerNumber(String actualControllerNumber) 
    {
        this.actualControllerNumber = actualControllerNumber;
    }

    public String getActualControllerNumber() 
    {
        return actualControllerNumber;
    }

    public void setActualControllerName(String actualControllerName) 
    {
        this.actualControllerName = actualControllerName;
    }

    public String getActualControllerName() 
    {
        return actualControllerName;
    }

    public void setActualControllerImageUrl(String actualControllerImageUrl) 
    {
        this.actualControllerImageUrl = actualControllerImageUrl;
    }

    public String getActualControllerImageUrl() 
    {
        return actualControllerImageUrl;
    }

    public void setActualControllerBackImageUrl(String actualControllerBackImageUrl) 
    {
        this.actualControllerBackImageUrl = actualControllerBackImageUrl;
    }

    public String getActualControllerBackImageUrl() 
    {
        return actualControllerBackImageUrl;
    }

    public void setBusinesslicenseNumber(String businesslicenseNumber) 
    {
        this.businesslicenseNumber = businesslicenseNumber;
    }

    public String getBusinesslicenseNumber() 
    {
        return businesslicenseNumber;
    }

    public void setBusinesslicenseUrl(String businesslicenseUrl) 
    {
        this.businesslicenseUrl = businesslicenseUrl;
    }

    public String getBusinesslicenseUrl() 
    {
        return businesslicenseUrl;
    }

    public void setLegalRepresentative(String legalRepresentative) 
    {
        this.legalRepresentative = legalRepresentative;
    }

    public String getLegalRepresentative() 
    {
        return legalRepresentative;
    }

    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }

    public void setUpdatedAt(Date updatedAt) 
    {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() 
    {
        return updatedAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userName", getUserName())
            .append("userId", getUserId())
            .append("userPhoneNumber", getUserPhoneNumber())
            .append("userType", getUserType())
            .append("certValidDate", getCertValidDate())
            .append("alipayUid", getAlipayUid())
            .append("userOpenId", getUserOpenId())
            .append("merchantAppId", getMerchantAppId())
            .append("leaseCorpName", getLeaseCorpName())
            .append("leaseCorpId", getLeaseCorpId())
            .append("leaseCorpOwnerName", getLeaseCorpOwnerName())
            .append("lesseeType", getLesseeType())
            .append("leasedEnterprise", getLeasedEnterprise())
            .append("userImageUrl", getUserImageUrl())
            .append("userBackImageUrl", getUserBackImageUrl())
            .append("registeredTelephoneNumber", getRegisteredTelephoneNumber())
            .append("actualControllerId", getActualControllerId())
            .append("actualControllerNumber", getActualControllerNumber())
            .append("actualControllerName", getActualControllerName())
            .append("actualControllerImageUrl", getActualControllerImageUrl())
            .append("actualControllerBackImageUrl", getActualControllerBackImageUrl())
            .append("businesslicenseNumber", getBusinesslicenseNumber())
            .append("businesslicenseUrl", getBusinesslicenseUrl())
            .append("legalRepresentative", getLegalRepresentative())
            .append("createdAt", getCreatedAt())
            .append("updatedAt", getUpdatedAt())
            .toString();
    }
}
